package com.bgds.sys.module.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bgds.sys.module.entity.DeviceDynamicAttr;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author lj
 * @since 2020-01-06
 */
public interface IDeviceDynamicAttrService extends IService<DeviceDynamicAttr> {


    /**
     *  设备编码获取设备动态属性
     * @param deviceCode 设备编码
     * @param filterCode 页面过滤编码
     * @return
     */
    List<DeviceDynamicAttr> listByDeviceCode(String deviceCode,String filterCode);

    /**
     * 获取阈值报警监测点
     * @return
     */
    List<DeviceDynamicAttr> listByAlarmFlag();

    Boolean addOrUpdate(DeviceDynamicAttr attr);

    /**
     *  设备编码和判断报警阈值的类型获取设备动态属性
     * @param deviceCode 设备编码
     * @param judgeType 判断是否报警的方法类型
     * @return
     */
    List<DeviceDynamicAttr> listByDeviceCodeAndJudgeType(String deviceCode, Integer judgeType);
    /**
     *  设备编码和分组编码获取设备动态属性
     * @param deviceCode 设备编码
     * @param alarmFilter 报警过滤
     * @return
     */

    List<DeviceDynamicAttr> listAlarmDeviceByDeviceCodeAndAlarmFilter(String deviceCode, String alarmFilter);

    boolean updateAlarmStatus(Long attrId, Integer zero);
}
